SQL Server: Common Query Tuning Problems and Solutions – Part 1

There are a wide variety of common performance problems that you will encounter when query tuning. Part 1 of this two-part course begins by showing how to validate query execution assumptions around statistics and cardinality in order to ensure you're troubleshooting the true root cause of a query performance issue. You'll then learn about common areas where bad assumptions can occur that negatively impact overall query performance, and about common problems and solutions related to being imprecise when querying a database. The course is very demo-centric, with lots of practical tips and tricks you'll be able to apply in your environment. This course is perfect for developers, DBAs, and anyone responsible for query performance tuning on SQL Server, from SQL Server 2005 onward.
SQL Server: Common Query Tuning Problems and Solutions – Part 1Course Introduction00:02:53
Course Introduction01:08
Course Scope00:40
Course Structure01:04
SQL Server: Common Query Tuning Problems and Solutions – Part 1Validating Assumptions00:47:00
Module Introduction00:53
Downstream Impact of Bad Assumptions01:16
Cardinality Estimation and Predicates01:01
Selectivity00:43
Query Cardinality Questions00:54
Cardinality Estimate Inputs00:39
Statistics00:41
Demo: DBCC SHOW_STATISTICS STAT_HEADER03:21
Demo: DBCC SHOW_STATISTICS DENSITY_VECTOR01:46
Demo: DBCC SHOW_STATISTICS HISTOGRAM03:19
Demo: Histogram Direct Step Hit02:17
Demo: Scaling the Estimate03:36
Demo: Histogram Intra-Step Hit02:58
Demo: Density Vector With an Unknown Runtime Value03:54
Demo: Parameter Sniffed Value Estimation03:45
Demo: Distinct Value Estimation01:42
Impact to Query Execution and Performance00:41
Identifying Bad Assumptions - 100:46
Demo: Viewing Estimated Vs. Actual Row Counts03:52
Identifying Bad Assumptions - 200:42
Demo: sys.dm_exec_query_profiles01:45
Demo: Root-level Skews via sys.dm_exec_query_stats04:50
What Variance is Problematic?00:55
Module Summary00:33
SQL Server: Common Query Tuning Problems and Solutions – Part 1Troubleshooting Bad Assumptions01:15:15
Module Introduction00:42
Model Assumptions01:22
Demo: Jagged Distributions05:32
Demo: Correlated Predicates05:20
Demo: Correlated Predicates in SQL Server 201406:03
Demo: Correlated Join Predicates, Independent Filter Predicates04:20
Demo: Searching for Off-Histogram Values03:19
Demo: Searching for Off-Histogram Values in SQL Server 201403:37
Troubleshooting Questions - 101:15
Demo: Missing Statistics03:13
Demo: Selectivity Guesses03:54
Demo: Stale Statistics04:24
Demo: Inadequate Sampling05:43
Demo: Parameter Sensitivity05:31
Demo: Table Variable Usage02:24
Demo: MSTVF Usage - Part 103:32
Demo: MSTVF Usage - Part 202:34
Demo: MSTVF Usage - Part 301:29
Troubleshooting Questions - 201:41
Demo: Data Type Conversions04:15
Demo: Buried Predicates - Part 102:16
Demo: Buried Predicates - Part 202:11
Module Summary00:26
SQL Server: Common Query Tuning Problems and Solutions – Part 1Tuning Imprecision Problems00:26:12
Module Introduction00:55
Demo: SELECT *03:26
Demo: Unnecessary Sorts02:41
Demo: Needless DISTINCT03:01
Demo: UNION Vs. UNION ALL02:38
Demo: Leading Wildcards03:27
Demo: Hidden Cartesian Products01:55
Demo: Data Type Conversion Issues03:41
Demo: Redundant Logic and Overlapping Object References03:33
Module and Course Summary00:50